
#ifndef __CE_LODNODECOLLECTION_H__
#define __CE_LODNODECOLLECTION_H__

#include <cegfx/ce.h>
#include <cegfx/ceexport.h>
#include <cegfx/cenodecollection.h>
#include <cegfx/ilodsolver.h>

class CE_GFX_API ceLODNodeCollection : public ceNodeCollection
{
IQF_DECLARATION
  ;
private:

  iLODSolver* solver;

  unsigned lodStage;

	bool keepLastNode;

public:
  ceLODNodeCollection ();
  ~ceLODNodeCollection ();

  virtual void Update (const ceUpdateEnv& env);

  void SetLODSolver (iLODSolver* solver);
  iLODSolver* GetLODSolver ();
  const iLODSolver* GetLODSolver () const;

	void SetKeepLastNode (bool keedLastNode);
	bool IsKeepLastNode () const;


  virtual unsigned GetNumberOfNodes () const;
  virtual ceNodePtr GetNode (unsigned idx);
  virtual const ceNodePtr GetNode (unsigned idx) const;

};

#endif /* ! __CE_LODNODECOLLECTION_H__ */ 
